package org.reliablesource.prism.core.internal;

import org.reliablesource.prism.core.IPrismElement;

/**
 * 
 * Created on: Feb 25, 2006
 * 
 * @author Dennis Park <a
 *         href="mailto:dennis.park@gmail.com">dennis.park@gmail.com</a>
 * 
 */

abstract class PrismElement extends ModelElement {

	protected String name;

	protected IPrismElement parent;

	protected Integer id;

	PrismElement() {
		super();
		setChanged();
	}

	final public void setName(String name) {
		this.name = new String(name);
		setChanged();
	}

	final public String getName() {
		return name;
	}

	final public IPrismElement getParent() {
		return parent;
	}

	final protected void setParent(IPrismElement _parent) {
		this.parent = _parent;
		setChanged();
	}

	final public Integer getId() {
		return id;
	}

	final protected void setId(Integer _id) {
		id = _id;
		setChanged();
	}
}
